Recent years have witnessed major advances in the field of computer systems technologies along with the major breakthroughs in the hardware field such as in the design of microprocessors, memory, and data transfer bus. These advances in technologies along with the fierce competition in the free marketplace have reduced the price of computing, and made it affordable to the masses. Electronic computing is no longer reserved for large companies, maintaining customers' accounts in banks, or performing theoretical or engineering research.
The computing power is no longer centralized in a central mainframe, and the clients are no longer the dumb terminals they used to be, whose only function was to submit jobs to be processed at the central host. Nowadays, the personal computer, or PC, is a rich machine that can be both the client and the host, and is becoming very affordable.
However, despite all these advances, the technology is far from perfect. PCs are known for sudden crashes that destroy data that was not saved in time to the local disk drive. The disk drives are mechanical devices that have a limited life, and depending on how they are used are known to crash and all the data that was saved on them is permanently lost. In addition, the popularity of the internet and electronic mail have made it possible to spread electronic viruses that destroy data on the hard drives. It has become necessary to back up the data saved on the hard drives, and retrieve it later when needed. This is particularly important for businesses that store customer and billing information.
Companies of all sizes have now invested in powerful PCs that act as a central repository of data. Individual client machines that are now connected via networks back up and store their data in these central servers. In actuality, certain number of clients PCs will be connected via a network to a server using defined protocols such as TCP (Transmission Connect Protocol). When a PC communicates with the server, it exchanges messages to ensure the integrity of the communication. It is when several PCs attempt to store data at the server simultaneously, that bottlenecks arise, and the throughput and performance slow down to a halt. A need therefore arises for combining these messages, and for reducing the number of transmission, thereby alleviating some of the network load.